class A:
    pass


class B:
    pass


class C(A, B):
    def __init__(self, name, age):
        self.name = name
        self.age = age


# 创建一个 C 类属性的实例对象 x
x = C('阿瑾', 20)

# __dict__ 可以用于打印这个类所属的所有方法和属性的一个字典
print(C.__dict__)
# 如果这个对象是实例对象则只能看到其属性的一个字典
print(x.__dict__)

print('------------------------')

# __class__ 输出对象所属的类
print(x.__class__)

# __bases__ 打印 C 类的所有父类的元素属性
print(C.__bases__)

# __base__ 打印 C 类第一个父类的元素属性
print(C.__base__)

# __mor__ 打印 C 的类层次结构
print(C.__mro__)

# __subclasses__() 打印 A 类所有的子类
print(A.__subclasses__())
